#1、生成多个银行卡号，卡号由6位组成，前3位为610
cards={}
for i in range(1,101):
      cards.setdefault(610000+i,'000000')
print(cards)


#2、运用字典创建多个用户注册信息，然后遍历显示用户
keys=['name','age','phone','email']
flag=input('请输入是否录入用户信息(yes/no):')
users_info=[]
while flag=='yes':
    dict1=dict.fromkeys(keys)
    dict1['name']=input('请输入用户姓名：')
    dict1['age']=input('请输入用户年龄：')
    dict1['phone'] = input('请输入用电话：')
    dict1['email'] = input('请输入用户电子邮件：')
    users_info.append(dict1)
    flag = input('是否继续录入用户信息(yes/no):')
    if flag=='no':
        break
    else:
        print('并没有录入用户信息！')
print('当前一共有%d个用户信息如下：'%len(users_info))
for i in users_info:
    for m,n in i.items():
        print('%s:%s'%(m,n),end=' ')


#3.给定五位数字，满足ABCD*A=EEEEE
num=int(input('请输入一个五位数字：'))
if num>=10000 and num<=99999:
    for i in range(10000,100000):
        if i*int(str(i)[0])==int(str(i)[4]*6):
              print(i)
else:
     print('输入错误！')


#4、候选人
# 假设有一个员工列表，以及他们的投票结果（候选人列表）
employees_votes = {
    'Alice': ['Bob', 'Charlie'],
    'Bob': ['Eve', 'David'],
    'Charlie': ['Alice', 'Eve'],
}
# 初始化一个字典来跟踪候选人的票数
candidate_votes = {}
# 遍历员工的投票并计算每个候选人的票数
for votes in employees_votes.values():
    for candidate in votes:
        if candidate not in candidate_votes:
            candidate_votes[candidate] = 0
        candidate_votes[candidate] += 1
# 根据票数对候选人进行排序，并输出票数前两名的候选人
sorted_candidates = sorted(candidate_votes.items(), key=lambda x: x[1], reverse=True)
top_two = sorted_candidates[:2]
for candidate, count in top_two:
    print(f"{candidate}当选票数: {count}")


#5、python之禅（import this),统计计算最多出现的单词
import collections
import this
# 获取Python之禅的文本
zen_of_python = this.s
# 将文本分割成单词列表（这里我们简单地使用空格分割，但实际中可能需要更复杂的分词逻辑）
words = zen_of_python.split()
# 使用Counter统计每个单词的出现次数
word_counts = collections.Counter(words)
# 输出出现次数最多的前三个单词
for word, count in word_counts.most_common(3):
    print(f"{word}: {count}")


